/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package pessoas.CommandListaContatos;

import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import pessoas.collection.Contatos;
import pessoas.interfaces.ICommandListaContatos;
import pessoas.model.Contato;
import pessoas.presenter.ContatoZelador;

/**
 *
 * @author Bush
 */
public class DesfazerCommandLista implements ICommandListaContatos {
    private Contatos contatos;

    public DesfazerCommandLista(Contatos contatos) {
        this.contatos = contatos;
    }    
    
    @Override
    public void exercutar() {
        Contato c = new Contato(null, null, null, null, null);
        try {
            c.restaurarContato(ContatoZelador.getInstancia().getUltimoEstadoSalvo());
            if(c.getId().equals("editado")){
                for(int i=0;i<contatos.getContatos().size();i++){
                    if(contatos.getContatos().get(i).getId().equals("editado")){
                        c.setId("0");
                        contatos.setContato(c, i);
                    }
                }
            }else
                contatos.salvarContato(c); 
            JOptionPane.showMessageDialog(null, "Operação desfeita!!");
        } catch (Exception ex) {
            JOptionPane.showMessageDialog(null, ex.getMessage());
        }
    }

}
